const app = getApp();
Page({

    /**
     * 页面的初始数据
     */
    data: {
        filterType: [
            {
                text: '全部',
                value: '',
            },
            {
                text: '悬赏任务',
                value: 1,
            },
            {
                text: '招标任务',
                value: 2,
            }
        ],
        filterState: [
            {
                text: '全部',
                value: '',
            },
            {
                text: '进行中',
                value: 1,
            },
            {
                text: '已完成',
                value: 12,
            },
        ],
        priceOne: null,
        priceTwo: null,
        sortList: [
            {
            title: '综合排序',
            index: ''
            },
            {
                title: '发布时间',
                index: 1
            },
            {
                title: '稿件数',
                index: 2
            },
            {
                title: '赏金',
                index: 3
            }
        ],
        taskCateList: '',
        taskCateText: '全部分类',
        modeTypeText: '全部类型',
        sortTypeText: '全部排序',
        taskList: '',
        pageNum: 1,
        taskName: '',
        cate_id: '',
        desc: '',
        userType: '',
        filterInfo:{
            startCash: '',
            endCash: '',
            pattern:0,
            type:0,
            state:0
        },
        filterActive:'',
        loading:false,
    },


    filterCardClear(){
        const child=this.selectComponent('.filterCard')
        child.clearData()
        let data={
            startCash: '',
            endCash: '',
            pattern:0,
            workType:0,
            state:0
        }
        this.setData({
            filterInfo:data
        })
    },

    taskFilter(e){
        this.setData({
            filterInfo:e.detail,
            pageNum: 1,
            taskList: ''
        })
        this.taskList();
    },

    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function (options) {
        wx.hideHomeButton()
        var _this = this;
        wx.getSystemInfo({
            success(res) {
                _this.setData({
                    navHeight: res.statusBarHeight,
                    userType: wx.getStorageSync('userType'),
                })
            }
        });
        if (options.id) {
            this.setData({
                cate_id: options.id,
                taskCateText: options.text,

            })
        }
        //全部分类
        this.taskCate(options);
        // 任务列表
        this.taskList();
    },
    // 分类切换
    taskCategoryTab: function () {
        this.setData({
            cate_id: ''
        })
        this.taskList();
        this.setData({
            taskCategoryIndex: 0
        })

    },
    // 分类列表显示隐藏
    categoryBtn: function () {
        var {
            filterBoxShow
        } = this.data
        this.setData({
            filterBoxShow: !filterBoxShow,
        })
    },
    // 模式列表显示隐藏
    modeBtn: function () {
        var {
            filterBoxShow
        } = this.data
        this.setData({
            filterBoxShow: !filterBoxShow,
        })
    },
    // 排序列表显示隐藏
    sortBtn: function () {
        var {
            filterBoxShow
        } = this.data
        this.setData({
            filterBoxShow: !filterBoxShow,
        })
    },
    //全部分类
    taskCate: function (options) {
        var _this = this;
        wx.request({
            url: app.globalData.baseUrl + 'taskCate',
            data: {},
            success(res) {
                if (res.data.code == 1000) {
                    let all={
                        text: "全部分类",
                        id:0,
                        children:[
                            {
                                name:'全部分类',
                                text: "全部分类",
                                id:0,
                            }
                        ]
                    }
                    let dataList=res.data.data
                    dataList?.forEach(item=>{
                        item['text']=item.name
                        item['children']=item.children_task
                        item['children']?.forEach(res=>{
                            res['text']=res.name
                        })

                    })
                    dataList.unshift(all)
                    _this.setData({
                        taskCateList: dataList
                    })

                    if (options.index) {
                        _this.setData({
                            filterActive:options
                        })
                    }
                } else {
                    wx.showToast({
                        title: res.data.message,
                        icon: 'none',
                        duration: 2000
                    })
                }
            }
        })
    },
    // 选择分类
    taskCateType: function (e) {
        let {
            id,
            name
        } = e.detail;
        if(id===0 && name==='全部分类'){
            this.setData({
                pageNum: 1,
                taskList: ''
            })
            this.taskCategoryTab()
        }else {
            this.setData({
                taskCateText: name,
                cate_id: id,
                pageNum: 1,
                taskList: ''
            })
            this.taskList();
        }
    },
    // 选择模式
    modeType: function (e) {
        let {
            index,
        } = e.detail;
        this.setData({
            desc: index,
            pageNum: 1,
            taskList: ''
        })
        this.taskList();
    },
    // 选择排序
    sortType: function (e) {
        var {
            index,
            title
        } = e.currentTarget.dataset;
        var {
            filterBoxShow
        } = this.data;
        this.setData({
            filterBoxShow: !filterBoxShow,
            sortTypeText: title,
            desc: index,
            pageNum: 1,
            taskList: ''
        })
        this.taskList();
    },
    // 输入框搜索
    searchInp: function (e) {
        this.filterCardClear()
        this.setData({
            taskName: e.detail.searchName
        })
        if (e.detail.searchName == '') {
            this.setData({
                pageNum: 1,
                taskList: ''
            })
            this.taskList();
        }
    },
    // 搜索
    searchBtn: function () {
        this.setData({
            pageNum: 1,
            taskList: '',
            cate_id: '',
            desc: '',
            type: '',
        })
        this.taskList();
    },
    // 任务列表
    taskList: function () {
        wx.showLoading({
            title: '加载中',
        })
        this.setData({
            loading:false
        })
        var _this = this;
        var {
            pageNum,
            taskName,
            cate_id,
            desc,
            type,
            taskList
        } = this.data;

        let {startCash,endCash,pattern,state} =this.data.filterInfo
        if(pattern!==0)type=pattern
        wx.request({
            url: app.globalData.baseUrl + 'tasks',
            data: {
                cate_id: cate_id,
                type,
                page: pageNum,
                taskName: taskName,
                desc: desc,
                startCash,
                endCash,
                status:state,
            },
            success(res) {
                wx.hideLoading()
                if (res.data.code == 1000) {
                    _this.setData({
                        taskList: [...taskList, ...res.data.data.data]
                    })
                } else {
                    wx.showToast({
                        title: res.data.message,
                        icon: 'none',
                        duration: 2000
                    })
                }
                _this.setData({
                    loading:_this.data.taskList.length===0
                })
            }
        })
    },
    // 任务详情
    taskDetailBtn: function (e) {
        var {
            id
        } = e.currentTarget.dataset;
        wx.navigateTo({
            url: '/taskPage/pages/taskDetail/taskDetail?id=' + id,
        })
    },
    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function () {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function () {
        wx.hideHomeButton()
    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function () {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function () {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function () {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function () {
        var {
            pageNum
        } = this.data;
        pageNum++;
        this.setData({
            pageNum
        });
        this.taskList();
    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function () {

    }
})
